from manimlib import *

# 创建一个类 SquareToCircle，继承于Scene
class SquareToCircle(Scene):
    # 定义构造函数，决定如何创建画面中的物体，以及执行那些操作
    def construct(self):
        # 创建一个圆形实例
        circle = Circle()
        # 方法将这个圆的填充颜色设为蓝色
        circle.set_fill(BLUE, opacity = 0.5)
        # 方法将这个圆的线条颜色设为深蓝色
        circle.set_stroke(BLUE_E, width = 4)
        # 通过 Scene 的 add() 方法，将这个圆添加到画面上。
        # self.add(circle)
        # 添加动画
        square = Square()
        # 使用 Scene 的 play() 方法，播放动画, 即播放 square 动画
        self.play(ShowCreation(square))
        # 默认 停顿 1s
        self.wait()
        # 播放 square 变化为 circle 动画
        self.play(Transform(square, circle))
        # 默认 停顿 1s
        self.wait()
        self.embed()
